/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package sistema.medico.controlador;

import com.db4o.ObjectContainer;
import com.db4o.ObjectSet;
import com.db4o.query.Constraint;
import com.db4o.query.Predicate;
import com.db4o.query.Query;
import java.util.Comparator;
import java.util.List;
import javax.swing.JOptionPane;
import sistema.medico.datos.DataConnection;
import sistema.medico.negocio.Tiempo_Dieta;


/**
 *
 * @author ESTUDIANTE
 */
public class Controlador_Tiempo_Dieta {
   
     ////////////////////////////////////////////////////////////////////////////
    ObjectContainer db = DataConnection.getInstance();//variable que contiene la informacion de la BD
    private List<Tiempo_Dieta> listMedicos;
    ////////////////////////////////////////////////////////////////////////////
    public void Guardar(Tiempo_Dieta td) {
        db.store(td);
        db.commit();
    }
    
    ////////////////////////////////////////////////////////////////////////////
    public List<Tiempo_Dieta> listar() {
        @SuppressWarnings("UnusedAssignment")
        List<Tiempo_Dieta> td = null;
        td = db.query(Tiempo_Dieta.class);//Cojemos todos los registros
        return td;
    }
    
    ////////////////////////////////////////////////////////////////////////////
    public Tiempo_Dieta getMedico(final String codigo) {
        @SuppressWarnings("UnusedAssignment")
        List<Tiempo_Dieta> dd = null;
        dd = db.query(new Predicate<Tiempo_Dieta>() {
            
        @Override
        public boolean match(Tiempo_Dieta o) {
                return o.getId().toLowerCase().contains(codigo.toLowerCase());//convertimos todo a minÃºscula y comparamos
            }
        }, new Comparator<Tiempo_Dieta>() {
            @Override
            public int compare(Tiempo_Dieta o1, Tiempo_Dieta o2) {
                return 0;
            }
        });
        if (dd.size() == 0) {
            JOptionPane.showMessageDialog(null, "No Existe Detalle Dieta");
            return null;
        } else {
            return dd.get(0);
        }
    }
    
    
    
    ////////////////////////////////////////////////////////////////////////////
    public void Actualizar(String id, String descripcion) {
        Query query = db.query();
        query.constrain(Tiempo_Dieta.class);
        Constraint constraint = query.descend("codigo").constrain(id);
        ObjectSet resultado = query.execute();
        Tiempo_Dieta td = (Tiempo_Dieta) resultado.get(0);
        td.getId();
        td.getDescripcion();
        db.store(td);
    }
    
}
